package rothag.models;

import rothag.models.monuments.Monument;

/**
 * Implémentation de l'interface MonumentJoueurInterface
 * @author gulian.lorini
 * @version 0.1 
 */
public class MonumentJoueur extends ModelBase implements MonumentJoueurInterface {

    private int nombreOuvriersSelectionnes;
    private boolean realise;
    private Monument monument;
    private Joueur joueur;

    /**
     * Constructeur
     * @param joueur Joueur
     * @param monument Monument
     */
    public MonumentJoueur(Joueur joueur, Monument monument) {
        this.joueur = joueur;
        this.monument = monument;
        nombreOuvriersSelectionnes = 0;
        realise = false;
    }

    /**
     * Met à jour le nombre d'ouvriers sélectionnés
     * @param newVar Nouvelle valeur
     */
    public void setNombreOuvriersSelectionnes(int newVar) {
        nombreOuvriersSelectionnes = newVar;
    }

    /**
     * Retourne le nombre d'ouvriers sélectionnés
     * @return Ouvriers sélectionnés
     */
    public int getNombreOuvriersSelectionnes() {
        return nombreOuvriersSelectionnes;
    }

    /**
     * Retourne si monument est réalisé
     * @return Vrai si réalisé
     */
    public boolean getRealise() {
        return realise;
    }

    /**
     * Met à jour si le monuement est réalisé
     * @param newVar Nouvelle valeur
     */
    public void setRealise(boolean newVar) {
        realise = newVar;
    }

    /**
     * Retourne le joueur
     * @return Joueur
     */
    public Joueur getJoueur() {
        return joueur;
    }

    /**
     * Retourne le monument
     * @return Monument
     */
    public Monument getMonument() {
        return monument;
    }
}
